The subject of the invention is a method for access, via various protocols, to objects in a tree representing at least one system resource. The objects in the tree may be distributed and/or non-distributed. A related subject of the invention is the system that includes at least the resource or set of resources and that implements the method of the invention. Consequently, this system can range from a single resource to a set of resources that can be distributed in several systems, which may or may not be different. The system that will be used as an example is a computer system. The method of the invention is usable for navigating through any tree. By way of example, it will hereinafter be applied to the management of at least one resource, such as a machine, a network or an application, of the computer system. Hence, a related subject of the invention is the resulting management system.
The invention can be adapted to conventional protocols as well as to protocols more specifically designed for interconnected high-density wide-area networks, such as the internet networks of the Web.
The management of computer resources is ordinarily handled by a management platform, several types of which are known. The platform that will be used as an example herein is that known by the registered trademark OpenMaster, marketed by applicants"" assignee. This platform is based on object-oriented technology. In this technology, the means constituting a computer resource are converted into object classes organized hierarchically in a tree constituting a management information base MIB.
The platform used herein as a non-limiting example uses the standardized communication protocol dedicated to management, known as CMIP (Common Management Information Protocol). The CMIP protocol is based on the ISO standard defining services for transferring management information, called CMIS (Common Management Information Services). This protocol is organized using a management information description language called GDMO/ASN.1 issued by Guidelines for the Definition of Managed Objects, based on the interconnection module known by the registered trademark OSI (Open Systems Interconnection) of the ISO (International Standards Organization), and on the syntax ASN 1 (Application Syntax Notation One). For the sake of convenience, this language will simply be called GDMO.
The platform comprises management applications, for example adapted to the detection of objects in the base MIB, and to the monitoring and security of objects. These applications are under a user""s control, and the objects they manage are accessed by sending requests and receiving responses. The requests and responses are sent to the target objects by a CMIP request broker of the platform. However, most of the target objects can only be reached through agents using a transmission protocol other than CMIP, which may or may not be standardized. Among the other known protocols that have been standardized by the ISO are the protocols SNMP (System Network Management Protocol), based on TCP/IP (Transmission Control Protocol/Internet Protocol) transmission, and DSAC (Distributed Systems Administration and Control) for an architecture like the Applicant""s DSA (Distributed System Architecture). The transmission of the requests and responses takes place through an interface called an agent integrator, which performs the conversion between the platform""s CMIP protocol and the other protocol.
However, it is increasingly desirable for the applications to be able to access objects belonging to other protocols that are becoming more widely used. Some of these protocols could be converted, but only with great difficulty and a certain amount of inconvenience. This is the case, for example, with computer resources wherein the data is represented in a common technological base and wherein data and services are exchanged using different protocols. One of these common technological bases is a distributed object architecture like CORBA (Common Object Request Broker Architecture), defined by the group of vendors and users working toward object management standardization, known as OMG (Object Management Group), and the Microsoft architecture OLE/COM (Object Linking and Embedding/Component Object Modeler). The CORBA architecture will be used herein as a non-limiting example. In the field of distributed computing, the CORBA architecture makes it possible to describe interfaces for computer services independently from the vendors and the languages that implement these services. The description of the interfaces is produced using a neutral interface description language known as IDL (Interface Definition Language), also defined by the group OMG. This language defines the boundaries of a component that constitutes a managed object, i.e., the contractual interfaces of the component with potential clients.
The automatic generation of an agent integrator for a CORBA distributed object architecture using IDL language currently comprises the creation of an interface description file in IDL language, and the automatic conversion and compilation of the description file. There are several known conversion algorithms, such as those published by the group JIDM (Joint Inter-Domain Management) of the group OMG. The problem with these algorithms is that the conceptual notions that can be described in the GDMO language of the CMIP protocol cannot be described in IDL language. Consequently, only some of the desired objects of the base MIB are obtained. The current solution consists of manually completing the code generated by the conversion, so as to use the characteristics of the GDMO language to best advantage. This solution has the main drawback of being time-consuming and expensive.
Another common technological base used more and more frequently is the model known as CIM (Common Information Model). This standardized model is defined by the consortium DMTF (Desktop Management Task Force). The CIM model is object-oriented and makes it possible to define conceptual schemas and real-world objects dedicated to management. It uses a unified modeling language known as UML (Unified Modeling Language). This model is currently enjoying increasing success because of its adaptation to exchanges in internet networks. Thus, it is used for enterprise management through the Web, currently known by the acronym WBEM (Web-Based Enterprise Management). In particular, the CIM model offers the dual advantage of being able to use a browser to search for management data, while using internet technologies for management. This model also offers the advantage of being well adapted to resources having a distributed object architecture.
Vendors of management systems or management system components that use a common technological base for representing objects adopt different protocols for exchanging data and services in order to meet users"" various needs. For the CIM model that is used as an example, there are various existing products supplied by different vendors. Given the rising success of this model, we can expect many other different products in the near future. This would require as many agent administrators as there are products.
It is also desirable for the management to extend to other particular domains. This is particularly the case for the domain related to objects stored in directories, especially when those directories are disparate and stored in various systems that can often be incompatible with one another. This is true, for example, of the protocol LDAP (Lightweight Directory Access Protocol), which uses the TCP/IP layer as required transport for internet networks and which provides a simple protocol for accessing these directories via internet networks. These directories can contain, for example, information on organizations and individuals (names, addresses, telephone numbers), public keys and other resources. The directories can be distributed in several servers. The objects in a directory are organized into a tree. An agent integrator for converting this protocol into CMIP would not pose any problem since the two protocols are very similar. They have the creation, deletion and modification functions in common, and they make it possible to specify a filter, a request scope and a list of attributes. However, there are other protocols in the domain of objects stored in directories that are very different from the CMIP protocol and would pose big problems or be very difficult to use.
Therefore, the problem is to avoid having to access the objects of the computer system via only the CMIP protocol of the platform, in order to avoid the use of integrating agents. One solution would consist of giving the applications of the management platform direct access to objects assigned to access protocols other than CMEP, such as for example the protocols CORBA, CIM and LDAP.
Access via various protocols to objects of a hierarchical tree is currently possible, for example the access offered by the naming directory interface known as JNDI (Java Naming Directory Interface), which uses the Java(copyright) language. This interface makes it possible to access objects by naming them in a unique way. One advantage of this unique naming is that it is identical to that used by the CMIS service, which uses the GDMO description language of the CMIP protocol of the platform used as an example. The interface JNDI is therefore also easily adaptable to the LDAP protocol, which is similar to CMIP. It is capable of transparently providing a common access to all of the heterogeneous objects belonging to different domains. This common access is obtained by means of protocol layers known as SPI (Service Protocol Interface) layers, respectively assigned to the protocols of the heterogeneous target objects. In addition to the possible SPI layers assigned to respective protocols, there can be one or more SPI layers that are not assigned to a protocol, for example an SPI layer for accessing the contents of a disk in a computer. In this case, the SPI layer is assigned to an access means.
Each SPI layer represents a particular context. This context is created during an operation in the SPI layer. Thus, in order to access objects belonging to a desired protocol (CMIP, CORBA, LDAP, CIM or another protocol), the common interface JNDI asks the SDI layer corresponding to the particular protocol to create a context indicating how to access any object assigned to the protocol of the corresponding SPI layer. It is therefore necessary to know the semantics of the object in order to create the context corresponding to the management domain of the object. The interface JNDI serves as an intermediary for the user who, by designating the SPI layer he wishes to use with the aid of a management application, creates the corresponding context. Such a knowledge of the semantics of each object by an application poses a practically insurmountable problem linked to the acceptance in an application of a new protocol or a new access means. This acceptance requires a modification of the code of the application in order to provide a knowledge of the context of the objects to be manipulated. Such a solution is not possible in practice. Moreover, the objects are defined in an environment that can be highly scalable. Furthermore, for each activity domain normally assigned to a particular protocol, a different context must be created and accepted by the application.
A first object of the invention is to allow generic access to any object in a tree. Generic access to an object is access independent of the protocol that is attached to the object. In other words, generic access creates an abstraction of the means used to access the object. Within the framework of the example chosen, the access method according to the invention does not require any application to know the context of the object and does not require a modification of the code of the application.
A second object of the invention is to offer scalable generic access, the objects in the tree being variable and other protocols being able to be added or deleted without requiring any substantial modification of the existing means used to obtain generic access.
A third object of the invention consists in providing a method that can easily be used to access the objects of a heterogeneous tree, without complicating the execution of the conventional method.
A fourth object of the invention consists of obtaining generic access that is inexpensive.
The subject of the invention is a method for access via at least two protocols to objects in a tree representing at least one system resource, the method using interface means to access the objects in the tree via said protocols, characterized in that it comprises at least one cycle comprising the following steps: making a request designating a target object to be accessed in the tree and having a scope of only one level below the target object; using an access protocol attribute of the target object indicating its access protocol to allow access to the target object through interface means; and obtaining via the request a response that includes at least the naming attribute of each object contained in the scope of the request and, if at least one object contained in the scope of the request has an access protocol different from that of the target object, the access protocol attribute of this object.
A related subject of the invention is a system for managing a system resource represented by a tree of objects contained in a management information base, the management system including a generic application for managing the resource through interface means that allow access to the objects in the tree using at least two protocols, characterized in that access to objects in the tree is obtained according to the method defined above.
Another related subject of the invention is a system, such as a computer system, that includes at least one system resource represented in the form of a tree of objects. characterized in that access to objects in the tree is obtained according to said method or by means of said management system.
Yet another related subject of the invention is a computer program that is loadable into an internal memory of a computer system, characterized in that it comprises code segments for implementing said method.
Another related subject of the invention is a computer program recording medium, characterized in that it comprises a program readable by a machine of a computer system and/or in a management system for controlling the execution of said method.